#include "log.hpp"

namespace ns_interface
{
    my_log::async_logger* log::_log_ptr = nullptr;

    log::log()
    {
        _log_ptr = new my_log::async_logger("test", my_log::log_level::value::DEBUG, my_log::flush_strategy::balanced);
        my_log::output_arr_builder builder;
        builder.addBuilder<my_log::screen_output>();
        _log_ptr->addFmtStrAndOutput("default", builder.build());
        _log_ptr->start();
        _log_ptr->debug(LOC, "logger start");
    }

    log::~log() 
    {
        _log_ptr->destroy();
    }

    void log::init()
    {
        static log instance;
    }
}